The present invention relates generally to call handling in a telecommunications system and more particularly to a method of and system for enhanced call waiting in a telecommunications network in which the handling of an incoming call is based on a set of user preferences.
Private telephone systems and local telephone companies currently provide services that allow a user to be notified of an incoming call while the user is engaged in another call. Generally this notification is accomplished by a special tone that alerts the user when there is an incoming call waiting for the user. When the user hears the special tone, the user can receive the incoming call by pressing and releasing the switch hook. Pressing and releasing the switch hook puts the first call effectively on hold and connects the user to the incoming call. The caller can toggle back and forth between the original call and the incoming call by pressing and releasing the switch hook.
Currently, there is no system by which the user can determine the source of the incoming call and determine whether or not the user wants to receive that call. The user must decide to either ignore the incoming call or receive the call without knowing who the caller is. Many times a user will be on a long distance call and choose not to receive the incoming call even though it may be an emergency or a call that the user is waiting for. If the user does decide to take the call, then the long distance call is put on hold while long distance charges continue to accrue. It is therefore an object of the present invention to provide a system for handling incoming calls based on a set of user preferences.
The present invention provides a method of and a system for enhanced call waiting in a telecommunications network. Call waiting is enhanced by using a set of user defined preferences to determine how to handle incoming calls when the user is currently engaged in a telephone conversation. Whenever an incoming call request is received and the destination number is busy, the invention retrieves the user""s preference data, which is stored in a call waiting preference table (xe2x80x9cCWPTxe2x80x9d). Many sets of user preferences can be stored in the call waiting preference table, each set of user preferences having a set identifier that corresponds to a row in the call waiting preference table. In essence, each set of user preferences is an incoming call handling scheme that is used to determine how the incoming call is to be handled.
Each set of user preferences or CWPT row may include: a set identifier; a flag indicating whether the row has been activated; one or more parameters identifying sources of incoming calls for which the CWPT row is to be used; one or more parameters identifying time periods for which the CWPT row is to be used; and instructions on how to handle the incoming call. Typically, the set identifier is one or more digits used to identify the CWPT row so that the user can easily reference the user preferences it contains. Alternatively, the set identifier could correspond to one or more voice activated commands. The parameter identifying sources of incoming calls can be a specific telephone number, a telephone number containing wild cards (e.g., 214-918-* or 214-*), a classification of the incoming call (e.g., local, metro, long distance), or some combination thereof. The parameter identifying time periods can be business days and hours, personal days and hours, a day of the week, weekends, holidays, or specific days, dates and times. The instructions on how to handle the incoming call (the xe2x80x9caction to performxe2x80x9d) can be priority, proximity or transfer. A priority instruction indicates that the incoming call should be handled with call waiting. A proximity instruction indicates that the incoming call should be transferred to a message center when the source of the incoming call is closer than the source of the currently connected call, and the incoming call should be handled with call waiting when the source of the incoming call is not closer than the source of the currently connected call. A transfer instruction indicates that the incoming call should be transferred to a message center.
In addition, each set of user preferences or CWPT row may include other options, such as a tone override, an outgoing message override, or a pass code. The tone override specifies a tone that is to be used when the incoming call is handled with call waiting. This tone overrides the default tone that is normally used with call waiting. A user can identify the type of incoming call or even the incoming caller by recognizing the tone used, and then determine whether to receive the incoming call. The outgoing message override specifies a message that is to be used when the incoming call is transferred to a message center. This message can supplement or replace the normal message used by the message center and can be customized to fit a specific type of incoming call. The user can also specify a pass code and give that code to certain callers, such as family or friends, so that the incoming caller can override the normal handling of the incoming call. Typically, the pass code would be used by the incoming caller to indicate an emergency call.
The present invention determines how to handle the incoming call based on three parameters: the CWPT rows that have been activated; the source of the incoming call; and the date and time of the incoming call. The present invention retrieves all the CWPT rows that satisfy these three parameters and then selects the CWPT row that best matches the incoming call. The incoming call is then handled according to the instructions contained in the selected CWPT row: the action to perform (e.g., priority, proximity or transfer); the tone override, if present; the outgoing message override, if present; and the pass code, if present.
For example, if a pass code is defined in the selected CWPT row, the incoming caller is prompted for a password. If the password entered by the incoming caller matches the pass code in the selected CWPT row, the incoming call is handled with call waiting using a special tone, which indicates that this is an emergency call or the incoming caller has correctly entered the password. If on the other hand, the password entered does not match the pass code, or a pass code is not defined in the selected CWPT row, the incoming call will be handled as instructed by the action to perform. The action to be perform may be priority, proximity or transfer.
If the selected CWPT row action to perform is priority, the incoming call is handled with call waiting. As previously described, different call waiting tones can be used if a tone override is present in the selected CWPT row. If the action to perform is proximity, the source of the incoming call is compared with the source of the currently connected call. If the incoming call is closer than the currently connected call, the incoming call is transferred to the message center and the message is handled normally. As previously described, if an outgoing message override is present in the selected CWPT row, an outgoing message is played to the caller, such as xe2x80x9cI am currently on the phone and am unable to take your call at the moment, please leave a message at the tone and I will return your call as soon as possible.xe2x80x9d If the incoming call is not closer than the currently connected call, the incoming call is handled like a priority call, as previously described. If the action to perform is transfer or if for some reason the selected CWPT row did not contain an action to perform, the incoming call is transferred to the message center and the message is handled normally. The outgoing message override is checked as previously described.
The call waiting preference table can be accessed through a standard administration processing routine. Typically, a user will call in and enter a password, which when verified, allows the user to run the administrative processing functions. The administrative processing functions are presented to the user through a main administration menu. If the user hangs up or exits the system, the processing will end. Otherwise, the user will be provided with a number of menu options, one of which would be accessing the user""s call waiting preferences. Upon selecting the enhanced call waiting menu, the user is presented with a selection menu. This selection menu allows the user to quit and return to the main administration menu, or to add, delete, change, activate/deactivate, and browse the CWPT rows. In addition, the user can browse the activated CWPT rows or activate/deactivate the default configuration. When the destination number is busy, the default configuration will handle all incoming calls with call waiting.